package com.lottery.system.service.activitystatus.operater;

import com.lottery.system.service.activitystatus.enums.SequenceEnum;
import com.lottery.system.service.dto.ConvertActivityDTO;

/**
 * @author: xiaoxie
 * create: 2024-09-12 20:01
 * @BelongsProject: lottery-system
 * @BelongsPackage: com.lottery.system.service.activitystatus.operater
 * description: 活动状态策略模式的接口
 */
public interface ActivityStatusAbstractOperator {
    /**
     * @description: 责任链的排序
     * @author: xiaoxie
     * @date: 2024/9/12 20:03
     * @param: []
     * @return: java.lang.Integer
     **/
    SequenceEnum sequence();

     /**
      * @description: 是否需要扭转状态
      * @author: xiaoxie
      * @date: 2024/9/12 20:05
      * @param: [convertActivityDTO]
      * @return: java.lang.Boolean
      **/
     Boolean needConvert(ConvertActivityDTO convertActivityDTO );

     /**
      * @description: 是否扭转状态成功
      * @author: xiaoxie
      * @date: 2024/9/12 20:05
      * @param: [convertActivityDTO]
      * @return: java.lang.Boolean
      **/
     Boolean convertStatus(ConvertActivityDTO convertActivityDTO);
}
